package com.ruoyi.lab.service.impl;

import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.lab.mapper.LabOperateMessageMapper;
import com.ruoyi.lab.domain.LabOperateMessage;
import com.ruoyi.lab.service.ILabOperateMessageService;

/**
 * 实验室操作信息Service业务层处理
 * 
 * @author dn
 * @date 2024-01-01
 */
@Service
public class LabOperateMessageServiceImpl implements ILabOperateMessageService 
{
    @Autowired
    private LabOperateMessageMapper labOperateMessageMapper;

    /**
     * 查询实验室操作信息
     * 
     * @param operateId 实验室操作信息主键
     * @return 实验室操作信息
     */
    @Override
    public LabOperateMessage selectLabOperateMessageByOperateId(Long operateId)
    {
        return labOperateMessageMapper.selectLabOperateMessageByOperateId(operateId);
    }

    /**
     * 查询实验室操作信息列表
     * 
     * @param labOperateMessage 实验室操作信息
     * @return 实验室操作信息
     */
    @Override
    public List<LabOperateMessage> selectLabOperateMessageList(LabOperateMessage labOperateMessage)
    {
        return labOperateMessageMapper.selectLabOperateMessageList(labOperateMessage);
    }

    /**
     * 新增实验室操作信息
     * 
     * @param labOperateMessage 实验室操作信息
     * @return 结果
     */
    @Override
    public int insertLabOperateMessage(LabOperateMessage labOperateMessage)
    {
        labOperateMessage.setOperateId(System.currentTimeMillis());
        labOperateMessage.setWorkno(SecurityUtils.getUsername());
        labOperateMessage.setCreateTime(DateUtils.getNowDate());
        return labOperateMessageMapper.insertLabOperateMessage(labOperateMessage);
    }

    /**
     * 修改实验室操作信息
     * 
     * @param labOperateMessage 实验室操作信息
     * @return 结果
     */
    @Override
    public int updateLabOperateMessage(LabOperateMessage labOperateMessage)
    {
        return labOperateMessageMapper.updateLabOperateMessage(labOperateMessage);
    }

    /**
     * 批量删除实验室操作信息
     * 
     * @param operateIds 需要删除的实验室操作信息主键
     * @return 结果
     */
    @Override
    public int deleteLabOperateMessageByOperateIds(Long[] operateIds)
    {
        return labOperateMessageMapper.deleteLabOperateMessageByOperateIds(operateIds);
    }

    /**
     * 删除实验室操作信息信息
     * 
     * @param operateId 实验室操作信息主键
     * @return 结果
     */
    @Override
    public int deleteLabOperateMessageByOperateId(Long operateId)
    {
        return labOperateMessageMapper.deleteLabOperateMessageByOperateId(operateId);
    }
}
